【CAI】Informaticaでのクエリパラメータを使用したAPI連携プロセス作成方法のご紹介
はじめに
こんにちは、データアナリティクス事業本部ビジネスソリューション部SAチームの渡部です。
今回はInformaticaのCloud Application Integration(以降、CAI)でクエリパラメータを使用したAPI連携の作成方法についてご紹介します。
今回のブログで使用するInformaticaアセットの元ネタとして、以下ブログで使用したデータアクセスサービスコネクタやアプリケーション接続・プロセスを流用します。
こちらのブログではパスパラメータで値を渡していたのですが、今回はそのクエリパラメータ版となります。
お話すること
クエリパラメータとパスパラメータの特徴
プロセスにおけるクエリパラメータの使用方法
クエリパラメータとパスパラメータについて
私はこれまでAPIを開発してきた経験がなく、パラメータの種類として複数あることを知りませんでした。 そこで様々な記事を読んで理解した、クエリパラメータとパスパラメータの特徴と使いどころをまとめてみました。
クエリパラメータ | パスパラメータ | |
---|---|---|
URL例(パラメータ:id) | https://www.example.com/api/users?id=1 | https://www.example.com/api/users/1 |
特徴 | ・URLを見るだけで何を渡したかわかりやすい ・必須のパラメータではないことが多い |
・URLの構造の一部として組み込まれる ・必須のパラメータであることが多い |
使いどころ | ・リクエストのオプションやフィルタなどの指定に使用する ・複数のパラメータを使用したいときに |
・リソースの識別に使用する |
プロセス
全体像は以下のとおりです。
クエリパラメータから値取得 > DBにパラメータ値をフィルタ条件にデータ取得 > 出力の流れです。
まずは開始
ステップで入力フィールドを設定します。
こちらの入力フィールドはクエリパラメータで使用したいパラメータの名前と一致させる必要があります。
今回はid
を渡すため、id
と設定しました。
出力フィールドは出力の形式に沿って設定し(元ネタから変更なし)、一時フィールドは今回使用しないため設定しません。
サービス
ステップの入力ID
に対して、入力フィールドで設定したid
をそのまま設定します。
こちらで呼びだしているデータアクセスサービスコネクタは、ID
をもとにDBから会員情報を取得する処理になります。
最後に割り当て
ステップで、APIの出力フィールドに対してサービス
ステップの出力フィールドを設定します。
これで開発は完了です。
実際にPostmanで発行されたサービスURLを叩いてみると、想定の結果が返ってきました。
おわりに
以上、クエリパラメータでのAPI連携のご紹介でした!
クエリパラメータとパスパラメータは仕様や処理によって使い分けていければよいかと思います。
また2024/2/20時点、SecureAgentで公開するAPIを管理APIとする場合にはパスパラメータを使用できないため、プロセスにはクエリパラメータを使用する必要があります。
※管理APIでは認証やIPフィルタリング・レーティングが設定できます。
参考情報
HOW TO: Consume the URL query parameters in Cloud Application Integration?